home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / dsp / dr.bub / 96000.lha / 96000 / appb / b111.asm < prev    next >
Assembly Source File  |  1992-04-28  |  2KB  |  29 lines

  1. ; This program was originally published in the Motorola DSP96002 Users Manual
  2. ; and is provided under a DISCLAIMER OF WARRANTY available from Motorola DSP
  3. ; Operation, 6501 William Cannon Drive West, Austin, Texas 78735-8598.  For
  4. ; more information, refer to the DSP96002 Users Manual, Appendix B, DSP
  5. ; Benchmarks.
  6. ;
  7. ; B.1.11    Complex Correlation Or Convolution (FIR Filter)  
  8. ;   cr(n) + jci(n) = SUM(I=0,...,N-1) { ( ar(I) + jai(I) ) * 
  9. ;                                       ( br(n-I) + jbi(n-I) ) } 
  10. ;   cr(n) = SUM(I=0,...,N-1) { ar(I) * br(n-I) - ai(I) * bi(n-I) } 
  11. ;   ci(n) = SUM(I=0,...,N-1) { ar(I) * bi(n-I) + ai(I) * br(n-I) } 
  12. ;                                                           Program     ICycles
  13. ;                                                           Words 
  14.        move   #aaddr,r0                                      ;    1      1 
  15.        fclr    d2                  #baddr,r4                 ;    1      1 
  16.        fclr    d0                                            ;    1      1 
  17.        fclr    d1                  x:(r0),d5.s  y:(r4),d6.s  ;;    1      1 
  18.        do      #N,end                                       ;    2      3 
  19.        fmpy d6,d5,d2 fsub.s d2,d0  x:(r4)+,d4.s y:(r0)+,d7.s ;    1      1 
  20.        fmpy d4,d7,d2 fadd.s d2,d1                           ;    1      1 
  21.        fmpy d4,d5,d2 fadd.s d2,d1                            ;    1      1 
  22.        fmpy d6,d7,d2 fadd.s d2,d0  x:(r0),d5.s  y:(r4),d6.s  ;    1      1 
  23. end 
  24.                      fsub.s d2,d0                            ;    1          1 
  25. ;                                                          ;  ---    --- 
  26. ;                                                    Totals:  11    4N+8
  27. ;                                                             (11    4N+8)
  28.